#ifndef _SMAT_DISPLAY_HH_
#define _SMAT_DISPLAY_HH_

#include <stdlib.h>
#include <time.h>

#include <vector>
#include "boost/smart_ptr.hpp"

#include "cxcore.h"

#include "basic_utils.hh"
#include "SMATModel.hh"

const CvSize DISPLAY_SIZE = cvSize(680,480);
const CvSize IMAGE_DISPLAY_SIZE = cvSize(480,480);
const CvSize PCLUSTER_DISPLAY_SIZE = cvSize(200,480);

const CvScalar DEPTH_0_COLOR = CV_RGB(0,128,0);
const CvScalar DEPTH_1_COLOR = CV_RGB(0,255,255);
const CvScalar DEPTH_COLOR = CV_RGB(0,0,255);

const unsigned int DISPLAY_MIN_PCLUSTERS = 5;
const unsigned int DISPLAY_MIN_ELEMENTS = 8;

void print_model_info(boost::shared_ptr<SMATModel>& model);
void print_model_state(boost::shared_ptr<SMATModel>& model);

// boost::shared_ptr<IplImage> display_SMATModel(const IplImage*, 
// 					      boost::shared_ptr<SMATModel>& model);
void display_SMATModel(IplImage * display, const IplImage *in_img, 
		       boost::shared_ptr<SMATModel>& model);


#endif
